import axios from 'axios'
//根据启动命令来决定目前使用什么环境
function getBaseURL(){
    switch(process.env.NODE_ENV){
        case 'production':
            return "http://47.98.128.191:3000" //生产模式
        default:
            return "http://www.zhaijizhe.cn:3005" //开发模式
    }
}
const service=axios.create({
    baseURL:getBaseURL(),
    timeout:5000
})
//设置请求拦截器
service.interceptors.request.use(config=>{
    //设置请求拦截器
    //携带token信息
    //config.headers['Authorization']="Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJfaWQiOiI2MGNiMDA3M2I4NGRjNWVlZGUwOWRkNzkiLCJpYXQiOjE2Njk3NzQ2MTQsImV4cCI6MTY2OTc3NjQxNH0.8mnLEaX0weRJBGkzJBxcaYZd0EYdmseMN1-YvkA5IDs"
    return config
})
/*
    axios实例.interfaceptor.response.use(参数1,参数2)
    参数1：正常返回的回调函数
    参数2：非正常返回的回调函数
*/ 
service.interceptors.response.use(response=>{
    //如果要将数据从响应拦截器返回到发送请求的回调中，需要使用return将这个返回对象返回
    return response.data
},err=>{
    if(err.response){
        switch(err.response.status){
            case 401:
                alert('您的token已经失效，请重新登录')
                break;
            case 404:
                alert('您输入的地址有误,请检查您的URL地址')
                break;
            case 500:
                alert('您的服务器有误，请与管理员联系')
                break
        }
    }else{
        if(!window.navigator.onLine){
            alert('您的网络已断开，请检查')
        }
    }
})
export default service
